package com.ys.entity.hr;
import java.math.BigDecimal;
import java.util.Date;
import javax.persistence.Table;
import com.alibaba.fastjson.annotation.JSONField;
import com.ys.annotation.YsField;
import com.ys.entity.base.BaseEntity;
/**
*/
@Table(name="TB_Attendance", catalog="Id")
public class TbAttendance extends BaseEntity<TbAttendance> {

	@YsField(nameDataBase="Id", nameJava="id", typeDataBase="bigint")
	private Long id;
	@YsField(nameDataBase="Type", nameJava="type", typeDataBase="varchar")
	private String type;
	@YsField(nameDataBase="Standards", nameJava="standards", typeDataBase="varchar")
	private String standards;
	@YsField(nameDataBase="PaidPersonalLeave", nameJava="paidPersonalLeave", typeDataBase="decimal")
	private BigDecimal paidPersonalLeave;
	@YsField(nameDataBase="MonthlyAsDay", nameJava="monthlyAsDay", typeDataBase="decimal")
	private BigDecimal monthlyAsDay;
	@YsField(nameDataBase="DailyAsHour", nameJava="dailyAsHour", typeDataBase="decimal")
	private BigDecimal dailyAsHour;
	@YsField(nameDataBase="Status", nameJava="status", typeDataBase="tinyint")
	private Integer status;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="CreateTime", nameJava="createTime", typeDataBase="datetime")
	private Date createTime;
	@JSONField(format = "yyyy-MM-dd HH:mm:ss")
	@YsField(nameDataBase="UpdateTime", nameJava="updateTime", typeDataBase="datetime")
	private Date updateTime;

	public Long getId() {
		return id;
	}
	public TbAttendance setId(Long id) {
		this.id = id;
		return this;
	}
	public String getType() {
		return type;
	}
	public TbAttendance setType(String type) {
		this.type = type;
		return this;
	}
	public String getStandards() {
		return standards;
	}
	public TbAttendance setStandards(String standards) {
		this.standards = standards;
		return this;
	}
	public BigDecimal getPaidPersonalLeave() {
		return paidPersonalLeave;
	}
	public TbAttendance setPaidPersonalLeave(BigDecimal paidPersonalLeave) {
		this.paidPersonalLeave = paidPersonalLeave;
		return this;
	}
	public BigDecimal getMonthlyAsDay() {
		return monthlyAsDay;
	}
	public TbAttendance setMonthlyAsDay(BigDecimal monthlyAsDay) {
		this.monthlyAsDay = monthlyAsDay;
		return this;
	}
	public BigDecimal getDailyAsHour() {
		return dailyAsHour;
	}
	public TbAttendance setDailyAsHour(BigDecimal dailyAsHour) {
		this.dailyAsHour = dailyAsHour;
		return this;
	}
	public Integer getStatus() {
		return status;
	}
	public TbAttendance setStatus(Integer status) {
		this.status = status;
		return this;
	}
	public Date getCreateTime() {
		return createTime;
	}
	public TbAttendance setCreateTime(Date createTime) {
		this.createTime = createTime;
		return this;
	}
	public Date getUpdateTime() {
		return updateTime;
	}
	public TbAttendance setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
		return this;
	}

	public static TbAttendance tbAttendance(
		String type,
		String standards,
		BigDecimal paidPersonalLeave,
		BigDecimal monthlyAsDay,
		BigDecimal dailyAsHour,
		Integer status
			) {
		TbAttendance entity = new TbAttendance();
		entity.setType(type);
		entity.setStandards(standards);
		entity.setPaidPersonalLeave(paidPersonalLeave);
		entity.setMonthlyAsDay(monthlyAsDay);
		entity.setDailyAsHour(dailyAsHour);
		entity.setStatus(status);
		return entity;
	}
}